﻿using BCCommon.Extensions;
using BCCommon.TMS.FreightEnums;
using BCCommon.TMS.Order;
using System;
using System.Collections.Generic;
using System.Text;

namespace BCDto.TMS.FreightConfiguration
{
    /// <summary>
    /// 运费配置数据输出模型
    /// </summary>
    public class FreightConfigurationDto
    {
        /// <summary>
        /// 运费配置Id
        /// </summary>
        public int FreightConfigurationId { get; set; }

        /// <summary>
        /// 省份编码
        /// </summary>
        public string ProvinceCode { get; set; }

        /// <summary>
        /// 市编码
        /// </summary>
        public string CityCode { get; set; }

        /// <summary>
        /// 发货地县区编码
        /// </summary>
        public string CountyCode { get; set; }

        /// <summary>
        /// 车辆类型Id
        /// </summary>
        public int VehicleTypeId { get; set; }

        /// <summary>
        /// 车辆分类映射Id
        /// </summary>
        public int VehicleCategoryReferenceId { get; set; }


        /// <summary>
        /// 起步价
        /// </summary>
        public decimal StartPrice { get; set; }

        /// <summary>
        /// 起步里程
        /// </summary>
        public int StartMileage { get; set; }

        /// <summary>
        /// 单公里价格
        /// </summary>
        public decimal MileagePrice { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime UpdateTime { get; set; }

        /// <summary>
        /// 编辑人
        /// </summary>
        public string Editer { get; set; }

        /// <summary>
        /// 区县名称
        /// </summary>
        public string CountyName { get; set; }

        /// <summary>
        /// 市名称
        /// </summary>
        public string CityName { get; set; }

        /// <summary>
        /// 省名称
        /// </summary>
        public string ProvinceName { get; set; }

        /// <summary>
        /// 车辆类型名称
        /// </summary>
        public string VehicleTypeName { get; set; }

        /// <summary>
        /// 分类名称
        /// </summary>
        public string CategoryValue { get; set; }

        /// <summary>
        /// 订单来源(商城、TMS、仓库)
        /// </summary>
        public OrderSourceType SourceType { get; set; }

        /// <summary>
        /// 订单来源(商城、TMS、仓库)
        /// </summary>
        public string SourceTypeStr { get { return this.SourceType.GetDescriptionString(); } }

        /// <summary>
        /// 物流类型（一般、快速、急速）
        /// </summary>
        public FreightType FreightType { get; set; }

        /// <summary>
        /// 物流类型（一般、快速、急速）
        /// </summary>
        public string FreightTypeStr { get { return this.FreightType.GetDescriptionString(); } }
    }
}